package com.businesscard.system.service;

import com.businesscard.system.entity.User;
import java.util.List;

/**
 * 用户服务接口
 */
public interface UserService {
    
    /**
     * 用户登录
     */
    User login(String username, String password);
    
    /**
     * 用户注册
     */
    boolean register(User user);
    
    /**
     * 根据ID查询用户
     */
    User getUserById(Integer id);
    
    /**
     * 根据用户名查询用户
     */
    User getUserByUsername(String username);
    
    /**
     * 根据邮箱查询用户
     */
    User getUserByEmail(String email);
    
    /**
     * 查询所有用户
     */
    List<User> getAllUsers();
    
    /**
     * 更新用户信息
     */
    boolean updateUser(User user);
    
    /**
     * 删除用户
     */
    boolean deleteUser(Integer id);
    
    /**
     * 重置密码
     */
    boolean resetPassword(String email);
    
    /**
     * 修改密码
     */
    boolean changePassword(Integer id, String oldPassword, String newPassword);
    
    /**
     * 锁定/解锁账户
     */
    boolean updateLockStatus(Integer id, Boolean locked);
    
    /**
     * 验证临时密码
     */
    boolean validateTempPassword(String email, String tempPassword);
} 